package top.fyxxxx.dbdesign.util;

import top.fyxxxx.dbdesign.data.SignInTask;

import java.util.List;

public interface TaskManager {
    /**
     * 创建任务
     * @param uid 账户编号
     * @param beginTime 起始时间
     * @param endTime 结束时间
     * @param belongToCid 属于Cid课程
     * @return 任务号
     */
    long createTask(long uid,long beginTime, long endTime, long belongToCid);

    /**
     * 销毁任务
     * @param uid 账户编号
     * @param sid 任务号
     * @return 销毁是否成功
     */
    boolean destroyTask(long uid,long sid);

    /**
     * 修改任务
     * @param uid 账户编号
     * @param sid 任务号
     * @param beginTime
     * @param endTime
     * @return 修改是否成功
     */
    boolean modifyTask(long uid,long sid,long beginTime,long endTime);

    /**
     * 获取某课程当前生效的任务
     * @param cid 课程号
     * @return
     */
    List<SignInTask> getCurTask(long cid);

    List<String> getTimes(long sid);
}
